package com.naizhuai.network.apistore;

import com.naizhuai.network.Config;
import com.naizhuai.network.entity.ResultResponse;
import com.naizhuai.ui.entity.mainbusiness.ActionEditContractActivityBean;
import com.naizhuai.ui.entity.mainbusiness.ActionMainBean;

import java.util.Map;

import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
import rx.Observable;

/**
 * Created by code_han on 2018/4/2.
 * 行为管理的网络接口调用
 */
public interface ActionManageRequest {

    /*
    查
     */
    //根据行为获取行为设置（图片对比设置）的相关信息
    @GET(Config.ACTION_SETTING_COMPARE_PAGER)
    Observable<ResultResponse<ActionEditContractActivityBean>> getComparePagerMsg(@Query("questionId") String questionId);

    //获取分析请求页面/过程数据的详情
    @GET(Config.ACTION_GET_PROCESS_DETAILS)
    Observable<ResultResponse<ActionEditContractActivityBean>> getProcessDetails(@Query("questionId") String questionId);

    //获取负责人评分界面的信息
    @GET(Config.ACTION_GET_SCORE_MSG_PAGE)
    Observable<ResultResponse<ActionEditContractActivityBean>> getExamineDataDetails(@Query("questionId") String questionId);

    //获取行为的主页面
    @GET(Config.ACTION_GET_MAIN_PAGER)
    Observable<ResultResponse<ActionMainBean>> getActionMainPager(@Query("companyId") String companyId);

    @GET(Config.ACTION_GET_BRIGHT_POINT)
    Observable<ResultResponse<ActionEditContractActivityBean>> getActionBrightPointMsg(@Query("questionId") String questionId);

    //获取待审批的行为详情
    @GET(Config.ACTION_GET_BEFORE_DETAILS)
    Observable<ResultResponse<ActionEditContractActivityBean>> getActionBeforeDetails(@Query("questionId") String questionId);

    //提交行为的成果页面的信息接口
    @FormUrlEncoded
    @POST(Config.ACTION_SUB_RESULT)
    Observable<ResultResponse<String>> submitActionDetails(@FieldMap Map<String, String> submitActionMessage);


    //提交分析过程设置（行动设置页2）
    @FormUrlEncoded
    @POST(Config.ACTION_SUB_PLAN_PROCESS)
    Observable<ResultResponse<String>> submitActionProcess(@FieldMap Map<String, String> submitProcessMessage);

    //提交领导评分的相关信息
    @FormUrlEncoded
    @POST(Config.ACTION_POST_SCORE_MSG)
    Observable<ResultResponse<String>> submitExamineDetails(@FieldMap Map<String, String> submitProcessMessage);


}
